//
//  main.m
//  base_m_07_@class关键字
//
//  Created by China Dragon on 2023/1/30.
//

#import <Foundation/Foundation.h>
#import "Student2.h"
#import "Book.h"
/*
 https://www.bilibili.com/video/BV1EE41157Uz?p=44&vd_source=4110e082785c06a8c24a5c86c6182472
 

  1:@class 不会把整个.h文件导入到类中，而import则是copy整个文件内容。
  2:@class只时声明定义该类，但是具体类中做了什么操作引用该类的类不会管。
  3:当有非常多个类同时引用一个类时，如果很多类都是用import导入，当该类变动时，导入该类的类也会重新被编译，耗费    资源。
  4:当两个类相互使用import引用对方时编译出错，而使用@class则不会。

 经过以上比较，个人觉得在***.h中药引用某个类，就是用@class声明就可以了，而在***.m类实现文件中在使用import导入要使用的类，因为在该类实现文件中可能会使用到import进来类中的方法。
 原文链接：https://blog.csdn.net/leifengpeng/article/details/44359753
 
 */
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
//        NSLog(@"Hello, World!");
        
        Student2 *stu = [[Student2 alloc] init];
        Book *book = [[Book alloc]init];
        
        stu.book = book;
//        NSLog(@"count = %zi",[book retainCount]);
        
        
//        [book release];
//        [stu release];
    }
    return 0;
}
